package com.coffee.sku.api.sku.service;

import com.coffee.core.entity.Page;
import com.coffee.core.entity.PagerInfo;
import com.coffee.core.exception.BusinessException;
import com.coffee.sku.api.sku.query.SkuQuery;
import com.coffee.sku.api.sku.result.SearchListResult;
import com.coffee.sku.api.sku.result.SkuResult;

import java.util.List;
import java.util.Map;
import java.util.Set;


public interface SkuService {

    Page<SkuResult> getPager(SkuQuery param, PagerInfo pr);

    Integer count(SkuQuery param);

    SkuResult getDetail(Integer id);

    List<SkuResult> getList(SkuQuery param, PagerInfo pr);

    List<SkuResult> getList(SkuQuery param);

    List<SkuResult> getList();

    void delete(Integer id);

    void addOrUpdate(SkuResult result) throws BusinessException;

    Map<Integer, SkuResult> getItemMap(Set<Integer> idSet);

    Map<Integer, SkuResult> getItemMap();

    Set<SearchListResult> getSearchList(Integer merchantId);

    void addSearchList(Integer merchantId, String name);

    String deleteSearch(Integer merchantId);
}